<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:cc="http://creativecommons.org/ns#"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:svg="http://www.w3.org/2000/svg"
   xmlns="http://www.w3.org/2000/svg"
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
   width="199.99995mm"
   height="173.75687mm"
   viewBox="0 0 199.99995 173.75687"
   version="1.1"
   id="svg8"
   inkscape:version="1.0.1 (c497b03c, 2020-09-10)"
   sodipodi:docname="branch_hoisting_before.svg">
  <defs
     id="defs2">
    <rect
       x="18.139799"
       y="132.9565"
       width="42.875893"
       height="13.192582"
       id="rect1896" />
    <rect
       x="73.476562"
       y="69.033791"
       width="111.61496"
       height="41.205557"
       id="rect1370" />
    <rect
       x="88.85537"
       y="63.907516"
       width="32.124634"
       height="21.53034"
       id="rect3730" />
    <rect
       x="9.5690403"
       y="9.2272892"
       width="20.163336"
       height="14.011809"
       id="rect3679" />
    <rect
       x="41.227337"
       y="-14.998642"
       width="72.234138"
       height="11.239376"
       id="rect3669" />
    <marker
       style="overflow:visible"
       id="marker3503"
       refX="0"
       refY="0"
       orient="auto"
       inkscape:stockid="Arrow1Lend"
       inkscape:isstock="true">
      <path
         transform="matrix(-0.8,0,0,-0.8,-10,0)"
         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
         d="M 0,0 5,-5 -12.5,0 5,5 Z"
         id="path3501" />
    </marker>
    <marker
       style="overflow:visible"
       id="marker3443"
       refX="0"
       refY="0"
       orient="auto"
       inkscape:stockid="Arrow1Lend"
       inkscape:isstock="true"
       inkscape:collect="always">
      <path
         transform="matrix(-0.8,0,0,-0.8,-10,0)"
         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
         d="M 0,0 5,-5 -12.5,0 5,5 Z"
         id="path3441" />
    </marker>
    <marker
       style="overflow:visible"
       id="marker3389"
       refX="0"
       refY="0"
       orient="auto"
       inkscape:stockid="Arrow1Lend"
       inkscape:isstock="true"
       inkscape:collect="always">
      <path
         transform="matrix(-0.8,0,0,-0.8,-10,0)"
         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
         d="M 0,0 5,-5 -12.5,0 5,5 Z"
         id="path3387" />
    </marker>
    <marker
       style="overflow:visible"
       id="marker3341"
       refX="0"
       refY="0"
       orient="auto"
       inkscape:stockid="Arrow1Lend"
       inkscape:isstock="true"
       inkscape:collect="always">
      <path
         transform="matrix(-0.8,0,0,-0.8,-10,0)"
         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
         d="M 0,0 5,-5 -12.5,0 5,5 Z"
         id="path3339" />
    </marker>
    <marker
       style="overflow:visible"
       id="marker3141"
       refX="0"
       refY="0"
       orient="auto"
       inkscape:stockid="Arrow1Lend"
       inkscape:isstock="true"
       inkscape:collect="always">
      <path
         transform="matrix(-0.8,0,0,-0.8,-10,0)"
         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
         d="M 0,0 5,-5 -12.5,0 5,5 Z"
         id="path3139" />
    </marker>
    <marker
       style="overflow:visible"
       id="marker2967"
       refX="0"
       refY="0"
       orient="auto"
       inkscape:stockid="Arrow1Lstart"
       inkscape:isstock="true">
      <path
         transform="matrix(0.8,0,0,0.8,10,0)"
         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
         d="M 0,0 5,-5 -12.5,0 5,5 Z"
         id="path2965" />
    </marker>
    <marker
       style="overflow:visible"
       id="Arrow1Send"
       refX="0"
       refY="0"
       orient="auto"
       inkscape:stockid="Arrow1Send"
       inkscape:isstock="true">
      <path
         transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
         d="M 0,0 5,-5 -12.5,0 5,5 Z"
         id="path2664" />
    </marker>
    <marker
       style="overflow:visible"
       id="Arrow1Lstart"
       refX="0"
       refY="0"
       orient="auto"
       inkscape:stockid="Arrow1Lstart"
       inkscape:isstock="true">
      <path
         transform="matrix(0.8,0,0,0.8,10,0)"
         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
         d="M 0,0 5,-5 -12.5,0 5,5 Z"
         id="path2649" />
    </marker>
    <rect
       x="9.5690403"
       y="9.2272892"
       width="20.163336"
       height="14.011809"
       id="rect3679-2" />
    <rect
       x="9.5690403"
       y="9.2272892"
       width="20.163336"
       height="14.011809"
       id="rect3692" />
  </defs>
  <sodipodi:namedview
     id="base"
     pagecolor="#ffffff"
     bordercolor="#666666"
     borderopacity="1.0"
     inkscape:pageopacity="0.0"
     inkscape:pageshadow="2"
     inkscape:zoom="1.2592908"
     inkscape:cx="377.95267"
     inkscape:cy="74.248148"
     inkscape:document-units="mm"
     inkscape:current-layer="layer1"
     inkscape:document-rotation="0"
     showgrid="false"
     inkscape:window-width="1680"
     inkscape:window-height="963"
     inkscape:window-x="0"
     inkscape:window-y="93"
     inkscape:window-maximized="1"
     showguides="true"
     fit-margin-top="0"
     fit-margin-left="0"
     fit-margin-right="0"
     fit-margin-bottom="0"
     lock-margins="false" />
  <metadata
     id="metadata5">
    <rdf:RDF>
      <cc:Work
         rdf:about="">
        <dc:format>image/svg+xml</dc:format>
        <dc:type
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
        <dc:title />
      </cc:Work>
    </rdf:RDF>
  </metadata>
  <g
     inkscape:label="Ebene 1"
     inkscape:groupmode="layer"
     id="layer1"
     transform="translate(60.000002,15.000516)"
     style="display:inline">
    <rect
       style="opacity:1;fill:#cfe2f3;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.258106;stroke-opacity:1"
       id="rect837"
       width="79.741898"
       height="38.498253"
       x="0.12905283"
       y="0.129053"
       ry="6.741148" />
    <rect
       style="opacity:1;fill:#cfe2f3;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.258106;stroke-opacity:1"
       id="rect837-9"
       width="79.741898"
       height="38.498253"
       x="-59.870949"
       y="60.129051"
       ry="6.741148" />
    <rect
       style="opacity:1;fill:#cfe2f3;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.258;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
       id="rect837-9-8"
       width="79.741898"
       height="38.498253"
       x="60.129051"
       y="60.129051"
       ry="6.741148" />
    <rect
       style="opacity:1;fill:#cfe2f3;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.258106;stroke-opacity:1"
       id="rect837-9-8-9"
       width="79.741898"
       height="38.498253"
       x="0.12905283"
       y="120.12905"
       ry="6.741148" />
    <path
       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#marker3141);paint-order:normal"
       d="M 59.249128,38.627306 80.750874,60.129051"
       id="path3329"
       inkscape:connector-type="polyline"
       inkscape:connector-curvature="0"
       inkscape:connection-start="#rect837"
       inkscape:connection-end="#rect837-9-8" />
    <path
       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker3341)"
       d="M 20.750874,38.627306 -0.75087247,60.129051"
       id="path3337"
       inkscape:connector-type="polyline"
       inkscape:connector-curvature="0"
       inkscape:connection-start="#rect837"
       inkscape:connection-end="#rect837-9" />
    <path
       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker3389)"
       d="M -0.75087304,98.627304 20.750875,120.12905"
       id="path3385"
       inkscape:connector-type="polyline"
       inkscape:connector-curvature="0"
       inkscape:connection-start="#rect837-9"
       inkscape:connection-end="#rect837-9-8-9" />
    <path
       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker3443)"
       d="M 80.750874,98.627304 59.249128,120.12905"
       id="path3439"
       inkscape:connector-type="polyline"
       inkscape:connector-curvature="0"
       inkscape:connection-start="#rect837-9-8"
       inkscape:connection-end="#rect837-9-8-9" />
    <path
       style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker3503)"
       d="M 41.227338,-14.998642 41.386551,0.50922611"
       id="path3499"
       inkscape:connector-type="polyline"
       inkscape:connector-curvature="0" />
    <text
       xml:space="preserve"
       id="text3667"
       style="font-style:normal;font-weight:normal;font-size:10.58329999999999949px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect3669);fill:#000000;fill-opacity:1;stroke:none;" />
    <text
       xml:space="preserve"
       style="font-style:normal;font-weight:normal;font-size:5.64444px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.265;stroke-miterlimit:4;stroke-dasharray:none"
       x="44.769436"
       y="-7.8602829"
       id="text3675"><tspan
         sodipodi:role="line"
         id="tspan3673"
         x="44.769436"
         y="-7.8602829"
         style="font-size:5.64444px;stroke-width:0.265;stroke-miterlimit:4;stroke-dasharray:none">in: %arg0, %arg1, %arg2</tspan></text>
    <text
       xml:space="preserve"
       id="text3677"
       style="font-style:normal;font-weight:normal;font-size:5.64444000000000035px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect3679);fill:#000000;fill-opacity:1;stroke:none;"
       transform="translate(25.051785,-8.0877048)"><tspan
         x="9.5683594"
         y="14.376156"><tspan
           style="font-size:5.64444px">bb0</tspan></tspan></text>
    <text
       xml:space="preserve"
       id="text3728"
       style="font-style:normal;font-weight:normal;font-size:10.58329999999999949px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect3730);fill:#000000;fill-opacity:1;stroke:none;" />
    <text
       xml:space="preserve"
       style="font-style:normal;font-weight:normal;font-size:5.64444px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
       x="94.617386"
       y="66.288452"
       id="text3736"><tspan
         sodipodi:role="line"
         id="tspan3734"
         x="94.617386"
         y="66.288452"
         style="font-size:5.64444px;stroke-width:0.264583">bb2</tspan></text>
    <text
       xml:space="preserve"
       id="text3677-0"
       style="font-style:normal;font-weight:normal;font-size:5.64444000000000035px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect3679-2);fill:#000000;fill-opacity:1;stroke:none;"
       transform="translate(-34.833839,51.912295)"><tspan
         x="9.5683594"
         y="14.376156"><tspan
           style="font-size:5.64444px">bb1
</tspan></tspan></text>
    <text
       xml:space="preserve"
       style="font-style:normal;font-weight:normal;font-size:5.64444px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
       x="26.288532"
       y="126.28845"
       id="text3736-6"><tspan
         sodipodi:role="line"
         id="tspan3734-5"
         x="26.288532"
         y="126.28845"
         style="font-size:5.64444px;stroke-width:0.264583">bb3 (%1)</tspan></text>
    <text
       xml:space="preserve"
       id="text1368"
       style="font-style:normal;font-weight:normal;font-size:5.64444000000000035px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect1370);fill:#000000;fill-opacity:1;stroke:none;"
       transform="translate(8.4353227,-0.28369449)"><tspan
         x="73.476562"
         y="74.182797"><tspan
           style="fill:#d40000;fill-opacity:1">%0 = alloc()</tspan><tspan
           style="font-size:5.64444px">
</tspan></tspan><tspan
         x="73.476562"
         y="81.238347"><tspan
           style="font-size:5.64444px">use(%0)
</tspan></tspan><tspan
         x="73.476562"
         y="88.293896"><tspan
           style="font-size:5.64444px">br bb3(%0)</tspan></tspan></text>
    <text
       xml:space="preserve"
       id="text1894"
       style="font-style:normal;font-weight:normal;font-size:5.64444000000000035px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect1896);fill:#000000;fill-opacity:1;stroke:none;" />
    <text
       xml:space="preserve"
       style="font-style:normal;font-weight:normal;font-size:5.64444px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
       x="16.620224"
       y="137.49144"
       id="text1902"><tspan
         sodipodi:role="line"
         id="tspan1900"
         x="16.620224"
         y="137.49144"
         style="font-size:5.64444px;stroke-width:0.264583">copy (%1, arg2)</tspan></text>
    <text
       xml:space="preserve"
       style="font-style:normal;font-weight:normal;font-size:5.64444px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
       x="76.269608"
       y="111.63254"
       id="text3165"><tspan
         sodipodi:role="line"
         id="tspan3163"
         x="76.269608"
         y="111.63254"
         style="font-size:5.64444px;stroke-width:0.264583">%0</tspan></text>
    <text
       xml:space="preserve"
       style="font-style:normal;font-weight:normal;font-size:5.64444px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
       x="-12.065383"
       y="111.08959"
       id="text3165-8"><tspan
         sodipodi:role="line"
         id="tspan3163-3"
         x="-12.065383"
         y="111.08959"
         style="font-size:5.64444px;stroke-width:0.264583">%arg1</tspan><tspan
         sodipodi:role="line"
         x="-12.065383"
         y="118.14514"
         style="font-size:5.64444px;stroke-width:0.264583"
         id="tspan3185" /></text>
  </g>
</svg>
